Vefþjónustustefna
Gagnasamskipti í gegnum vefþjónustur eru forsenda stafrænna lausna og eru því nauðsynlegar til að bæta þjónustu ríkisins við einstaklinga og fyrirtæki.
Stofnanir ættu því að huga að því að útfæra vefþjónustur ofan á gögn sem þær bera ábyrgð á. Einnig ættu þær að skoða hvernig hægt er að auka sjálfvirkni með því að nýta sér vefþjónustur frá öðrum.
Nú þegar er búið að útfæra fjölmargar vefþjónustur sem er hægt að skoða í vörulista vefþjónusta.
Straumurinn
Straumurinn er opið gagnaflutningslag sem gerir stofnunum og fyrirtækjum kleift að skiptast á upplýsingum yfir internetið. Straumurinn byggir á X-Road sem er miðstýrt dreift gagnaskiptalag milli upplýsingakerfa. Stofnanir geta skipst á upplýsingum í gegnum netið með því að nota Strauminn til að tryggja trúnað, heilleika og samvirkni milli aðila sem eiga í gagnasamskiptum.
Strauminn auðveldar stofnunum og fyrirtækjum að aðgangsstýra sínum vefþjónustum en jafnframt fá aðgang að vefþjónustum annarra. Hægt er að veita aðgang að heilum vefþjónustum eða stökum endapunktum.
Til að setja upp Strauminn þarf að sækja um hjá Stafrænu Íslandi og fylla út umsókn um samstarf. Nánari tæknilegar upplýsingar má finna í tæknihandbók Straumsins.
Hönnun á vefþjónustum
Við mælum með að stofnanir útfæri vefþjónustur með “RESTful” högun sem byggir á einföldum HTTP og JSON fyrirspurnum. Stafrænt Ísland gefur út leiðbeiningar fyrir hönnun á vefþjónustum, en þar eru ráðleggingar um nafnavenjur, gagnatög, villumeðhöndlun, skjölun, útgáfustýringu og margt fleira.
Sérstaklega skal huga að því að skjala vefþjónustur vel með OpenAPI (e. Swagger). Það einfaldar að skrá vefþjónustuna í Strauminn, en skjölunin verður þá aðgengileg í vörulista vefþjónusta. Skjölunin er sérstaklega gagnleg fyrir forritara sem eru að innleiða vefþjónustuna, en með OpenAPI skjölun er hægt að búa sjálfkrafa til innleiðingakóða í flestum forritunarumhverfum.
Þegar kemur að útgáfustýringu þarf að gæta þess að breyta ekki vefþjónustum í raunumhverfi á þann hátt að þær brjóti innleiðingar. Breytingar á endapunktum eða eigindum sem eru ekki afturvirkar þarf að gefa út í nýrri útgáfu af vefþjónustunni á nýrri vefslóð.
Meiri upplýsingar má finna í leiðbeiningum fyrir hönnun á vefþjónustum.
Auðkenning og aðgangsstýring
Hægt er að fara margar leiðir til að aðgangsstýra vefþjónustum en það fer aðallega eftir því hvernig kerfi munu kalla í vefþjónustuna og eðli gagnanna sem vefþjónustan vinnur með.
Ef vefþjónustan þarf aðeins kerfisauðkenningu (e. machine to machine) þá er Straumurinn mjög góð lausn. Ef Straumurinn er eina aðgangsstýring vefþjónustunnar þá ættu samskipti að vera dulkóðuð endanna á milli með HTTPS og gagnkvæmri auðkenningu (mTLS)
Annar valmöguleiki er að útfæra kerfisauðkenningu með aðgangslyklum (e. access tokens). Fyrirspurnarkerfið kallar í miðlægan auðkenningarþjón með kerfisauðkenningu (client credentials) og fær aðgangslykil sem hann sendir með fyrirspurnum á vefþjónustuna. Auðkenningarþjónn Ísland.is styður meðal annars kerfisauðkenningar.
Ef vefþjónustan á einnig að auðkenna endanotendur, t.d. til að stýra aðgang að viðkvæmum upplýsingum, þá er best að nota aðgangslykla frá auðkenningarþjón Ísland.is. Hægt að rekja þannig fyrirspurnir niður á endanotendur sem eru sannanlega auðkenndir með rafrænum skilríkjum. Eins býður þessi aðgangsstýring upp á umboð (foreldra, prókúruhafa o.s.frv.) og aðgangsheimildir (e. consent).
Við mælum með því að notast bæði við aðgangslykla og Strauminn.
Aðgangur að gögnum
Til að fá aðgang að vefþjónustum í Straumnum þarf að hafa samband við ábyrgðaraðila vefþjónustunnar.
Aðgangi að vefþjónustum er stýrt í gegnum stjórnborð Straumsins en ábyrgðaraðili vefþjónustunnar sér um að veita stofnunum og fyrirtækjum aðgang að þeim. Til að fá aðgang að vefþjónustu í gegnum Strauminn þurfa báðir aðilar að vera með X-road öryggisþjón. Þetta á bæði við um þann sem á vefþjónustuna og þann sem nýtir sér hana.